{"componentChunkName":"component---src-templates-post-jsx","path":"/vue공부1일차/","result":{"data":{"site":{"siteMetadata":{"title":"jigglog","author":"JIGGLYPOP","homepage":"http://jigglog.s3-website.ap-northeast-2.amazonaws.com"}},"post":{"id":"f125b00a-071d-54e8-8837-841498e84aa3","html":"<p>this는 이것을 뜻합니다!</p>\n<p>(그러니까 ‘이게’ 뭐죠… 😵)</p>\n<p>자바스크립트 내에서 this는 ‘누가 나를 불렀느냐’를 뜻한다고 합니다.</p>\n<p>즉, 선언이 아닌 호출에 따라 달라진다는 거죠.</p>\n<p>그럼 각 상황별로 this가 어디에 바인딩되는지 알아봅시다.</p>\n<h2 id=\"1-단독으로-쓴-this\" style=\"position:relative;\"><a href=\"#1-%EB%8B%A8%EB%8F%85%EC%9C%BC%EB%A1%9C-%EC%93%B4-this\" aria-label=\"1 단독으로 쓴 this permalink\" class=\"anchor-header before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>1. 단독으로 쓴 this</h2>\n<p>묻지도 따지지도 않고 this를 호출하는 경우엔 global object를 가리킵니다.</p>\n<p>브라우저에서 호출하는 경우 [object Window]가 되겠죠?</p>\n<p>이는 ES5에서 추가된 strict mode(엄격 모드)에서도 마찬가지입니다.</p>\n<p><img src=\"https://blog.kakaocdn.net/dn/duY8YT/btqDKUV2At7/shsc6qD3lLN9gpxQgeqKi0/img.png\" alt=\"img\"></p>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\">&#39;use strict&#39;;\n \nvar x = this;\nconsole.log(x); //Window</code></pre></div>\n<h2 id=\"2-함수-안에서-쓴-this\" style=\"position:relative;\"><a href=\"#2-%ED%95%A8%EC%88%98-%EC%95%88%EC%97%90%EC%84%9C-%EC%93%B4-this\" aria-label=\"2 함수 안에서 쓴 this permalink\" class=\"anchor-header before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>2. 함수 안에서 쓴 this</h2>\n<h2 id=\"\" style=\"position:relative;\"><a href=\"#\" aria-label=\" permalink\" class=\"anchor-header before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a></h2>\n<p>함수 안에서 this는 함수의 주인에게 바인딩됩니다.</p>\n<p>함수의 주인은? window객체죠!</p>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\">function myFunction() {\n  return this;\n}\nconsole.log(myFunction()); //Window\nvar num = 0;\nfunction addNum() {\n  this.num = 100;\n  num++;\n  \n  console.log(num); // 101\n  console.log(window.num); // 101\n  console.log(num === window.num); // true\n}\n \naddNum();</code></pre></div>\n<p>위 코드에서 this.num의 this는 window 객체를 가리킵니다.</p>\n<p>따라서 num은 전역 변수를 가리키게 됩니다.</p>\n<p>다만, strict mode(엄격 모드)에서는 조금 다릅니다.</p>\n<p>함수 내의 this에 디폴트 바인딩이 없기 때문에 undefined가 됩니다.</p>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\">&quot;use strict&quot;;\n \nfunction myFunction() {\n  return this;\n}\nconsole.log(myFunction()); //undefined\n&quot;use strict&quot;;\n \nvar num = 0;\nfunction addNum() {\n  this.num = 100; //ERROR! Cannot set property &#39;num&#39; of undefined\n  num++;\n}\n \naddNum();</code></pre></div>\n<p>따라서 this.num을 호출하면 undefined.num을 호출하는 것과 마찬가지기 때문에 에러가 납니다.</p>\n<h2 id=\"3-메서드-안에서-쓴-this\" style=\"position:relative;\"><a href=\"#3-%EB%A9%94%EC%84%9C%EB%93%9C-%EC%95%88%EC%97%90%EC%84%9C-%EC%93%B4-this\" aria-label=\"3 메서드 안에서 쓴 this permalink\" class=\"anchor-header before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>3. 메서드 안에서 쓴 this</h2>\n<p>그럼 일반 함수가 아닌 메서드라면 어떨까요?</p>\n<p>메서드 호출 시 메서드 내부 코드에서 사용된 this는 해당 메서드를 호출한 객체로 바인딩됩니다.</p>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\">var person = {\n  firstName: &#39;John&#39;,\n  lastName: &#39;Doe&#39;,\n  fullName: function () {\n    return this.firstName + &#39; &#39; + this.lastName;\n  },\n};\n \nperson.fullName(); //&quot;John Doe&quot;\nvar num = 0;\n \nfunction showNum() {\n  console.log(this.num);\n}\n \nshowNum(); //0\n \nvar obj = {\n  num: 200,\n  func: showNum,\n};\n \nobj.func(); //200</code></pre></div>\n<h2 id=\"4-이벤트-핸들러-안에서-쓴-this\" style=\"position:relative;\"><a href=\"#4-%EC%9D%B4%EB%B2%A4%ED%8A%B8-%ED%95%B8%EB%93%A4%EB%9F%AC-%EC%95%88%EC%97%90%EC%84%9C-%EC%93%B4-this\" aria-label=\"4 이벤트 핸들러 안에서 쓴 this permalink\" class=\"anchor-header before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>4. 이벤트 핸들러 안에서 쓴 this</h2>\n<p>이벤트 핸들러에서 this는 이벤트를 받는 HTML 요소를 가리킵니다.</p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token keyword\">var</span> btn <span class=\"token operator\">=</span> document<span class=\"token punctuation\">.</span><span class=\"token function\">querySelector</span><span class=\"token punctuation\">(</span><span class=\"token string\">'#btn'</span><span class=\"token punctuation\">)</span>\nbtn<span class=\"token punctuation\">.</span><span class=\"token function\">addEventListener</span><span class=\"token punctuation\">(</span><span class=\"token string\">'click'</span><span class=\"token punctuation\">,</span> <span class=\"token keyword\">function</span> <span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  console<span class=\"token punctuation\">.</span><span class=\"token function\">log</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">this</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> <span class=\"token comment\">//#btn</span>\n<span class=\"token punctuation\">}</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span></code></pre></div>\n<h2 id=\"5-생성자-안에서-쓴-this\" style=\"position:relative;\"><a href=\"#5-%EC%83%9D%EC%84%B1%EC%9E%90-%EC%95%88%EC%97%90%EC%84%9C-%EC%93%B4-this\" aria-label=\"5 생성자 안에서 쓴 this permalink\" class=\"anchor-header before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>5. 생성자 안에서 쓴 this</h2>\n<p>생성자 함수가 생성하는 객체로 this가 바인딩 됩니다.</p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token keyword\">function</span> <span class=\"token function\">Person</span><span class=\"token punctuation\">(</span><span class=\"token parameter\">name</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>name <span class=\"token operator\">=</span> name<span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span>\n \n<span class=\"token keyword\">var</span> kim <span class=\"token operator\">=</span> <span class=\"token keyword\">new</span> <span class=\"token class-name\">Person</span><span class=\"token punctuation\">(</span><span class=\"token string\">'kim'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n<span class=\"token keyword\">var</span> lee <span class=\"token operator\">=</span> <span class=\"token keyword\">new</span> <span class=\"token class-name\">Person</span><span class=\"token punctuation\">(</span><span class=\"token string\">'lee'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n \nconsole<span class=\"token punctuation\">.</span><span class=\"token function\">log</span><span class=\"token punctuation\">(</span>kim<span class=\"token punctuation\">.</span>name<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> <span class=\"token comment\">//kim</span>\nconsole<span class=\"token punctuation\">.</span><span class=\"token function\">log</span><span class=\"token punctuation\">(</span>lee<span class=\"token punctuation\">.</span>name<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> <span class=\"token comment\">//lee</span></code></pre></div>\n<p>하지만 new 키워드를 빼먹는 순간 일반 함수 호출과 같아지기 때문에, 이 경우는 this가 window에 바인딩됩니다.</p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token keyword\">var</span> name <span class=\"token operator\">=</span> <span class=\"token string\">'window'</span><span class=\"token punctuation\">;</span>\n<span class=\"token keyword\">function</span> <span class=\"token function\">Person</span><span class=\"token punctuation\">(</span><span class=\"token parameter\">name</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>name <span class=\"token operator\">=</span> name<span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span>\n \n<span class=\"token keyword\">var</span> kim <span class=\"token operator\">=</span> <span class=\"token function\">Person</span><span class=\"token punctuation\">(</span><span class=\"token string\">'kim'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n \nconsole<span class=\"token punctuation\">.</span><span class=\"token function\">log</span><span class=\"token punctuation\">(</span>window<span class=\"token punctuation\">.</span>name<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> <span class=\"token comment\">//kim</span></code></pre></div>\n<h2 id=\"7-명시적-바인딩을-한-this\" style=\"position:relative;\"><a href=\"#7-%EB%AA%85%EC%8B%9C%EC%A0%81-%EB%B0%94%EC%9D%B8%EB%94%A9%EC%9D%84-%ED%95%9C-this\" aria-label=\"7 명시적 바인딩을 한 this permalink\" class=\"anchor-header before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>7. 명시적 바인딩을 한 this</h2>\n<p>명시적 바인딩은 짝을 지어주는 거에요. 이 this는 내꺼! 같은 거 ;P</p>\n<p><a href=\"https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Function/apply\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">apply()</a> 와 <a href=\"https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Function/call\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">call()</a> 메서드는 Function Object에 기본적으로 정의된 메서드인데요, 인자를 this로 만들어주는 기능을 합니다.</p>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\">function whoisThis() {\n  console.log(this);\n}\n \nwhoisThis(); //window\n \nvar obj = {\n  x: 123,\n};\n \nwhoisThis.call(obj); //{x:123}</code></pre></div>\n<p>apply()에서 매개변수로 받은 첫 번째 값은 함수 내부에서 사용되는 this에 바인딩되고,</p>\n<p>두 번째 값인 배열은 자신을 호출한 함수의 인자로 사용합니다. </p>\n<p>어떻게 활용하냐면요…</p>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\">function Character(name, level) {\n  this.name = name;\n  this.level = level;\n}\n \nfunction Player(name, level, job) {\n  this.name = name;\n  this.level = level;\n  this.job = job;\n}</code></pre></div>\n<p>이렇게 두 생성자 함수가 있다고 해봅시다. this.name과 this.level을 받아오는 부분이 똑같습니다.</p>\n<p>이럴 때 apply()을 쓸 수 있어요.</p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token keyword\">function</span> <span class=\"token function\">Character</span><span class=\"token punctuation\">(</span><span class=\"token parameter\">name<span class=\"token punctuation\">,</span> level</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>name <span class=\"token operator\">=</span> name<span class=\"token punctuation\">;</span>\n  <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>level <span class=\"token operator\">=</span> level<span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span>\n \n<span class=\"token keyword\">function</span> <span class=\"token function\">Player</span><span class=\"token punctuation\">(</span><span class=\"token parameter\">name<span class=\"token punctuation\">,</span> level<span class=\"token punctuation\">,</span> job</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token function\">Character</span><span class=\"token punctuation\">.</span><span class=\"token function\">apply</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">this</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span>name<span class=\"token punctuation\">,</span> level<span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>job <span class=\"token operator\">=</span> job<span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span>\n \n<span class=\"token keyword\">var</span> me <span class=\"token operator\">=</span> <span class=\"token keyword\">new</span> <span class=\"token class-name\">Player</span><span class=\"token punctuation\">(</span><span class=\"token string\">'Nana'</span><span class=\"token punctuation\">,</span> <span class=\"token number\">10</span><span class=\"token punctuation\">,</span> <span class=\"token string\">'Magician'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span></code></pre></div>\n<p>call()도 apply()와 거의 같습니다.</p>\n<p>차이점이 있다면 call()은 인수 목록을 받고 apply()는 인수 배열을 받는다는 차이가 있어요.</p>\n<p>위 코드를 call()로 바꿔 쓴다면 이렇게 되겠죠 :)</p>\n<p>둘다 일단은 함수를 호출한다는 것에 주의하세요.</p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token keyword\">function</span> <span class=\"token function\">Character</span><span class=\"token punctuation\">(</span><span class=\"token parameter\">name<span class=\"token punctuation\">,</span> level</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>name <span class=\"token operator\">=</span> name<span class=\"token punctuation\">;</span>\n  <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>level <span class=\"token operator\">=</span> level<span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span>\n \n<span class=\"token keyword\">function</span> <span class=\"token function\">Player</span><span class=\"token punctuation\">(</span><span class=\"token parameter\">name<span class=\"token punctuation\">,</span> level<span class=\"token punctuation\">,</span> job</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token function\">Character</span><span class=\"token punctuation\">.</span><span class=\"token function\">call</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">this</span><span class=\"token punctuation\">,</span> name<span class=\"token punctuation\">,</span> level<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>job <span class=\"token operator\">=</span> job<span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span>\n \n<span class=\"token keyword\">var</span> me <span class=\"token operator\">=</span> <span class=\"token punctuation\">{</span><span class=\"token punctuation\">}</span><span class=\"token punctuation\">;</span>\n<span class=\"token function\">Player</span><span class=\"token punctuation\">.</span><span class=\"token function\">call</span><span class=\"token punctuation\">(</span>me<span class=\"token punctuation\">,</span> <span class=\"token string\">'nana'</span><span class=\"token punctuation\">,</span> <span class=\"token number\">10</span><span class=\"token punctuation\">,</span> <span class=\"token string\">'Magician'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span></code></pre></div>\n<p>apply()나 call()은 보통 유사배열 객체에게 배열 메서드를 쓰고자 할 때 사용합니다.</p>\n<p>예를 들어 arguments 객체는 함수에 전달된 인수를 Array 형태로 보여주지만 배열 메서드를 쓸 수가 없습니다.</p>\n<p>이럴 때 쓱하고 가져다 쓸 수 있어요.</p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token keyword\">function</span> <span class=\"token function\">func</span><span class=\"token punctuation\">(</span><span class=\"token parameter\">a<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> c</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  console<span class=\"token punctuation\">.</span><span class=\"token function\">log</span><span class=\"token punctuation\">(</span>arguments<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n \n  arguments<span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">(</span><span class=\"token string\">'hi!'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> <span class=\"token comment\">//ERROR! (arguments.push is not a function);</span>\n<span class=\"token punctuation\">}</span>\n<span class=\"token keyword\">function</span> <span class=\"token function\">func</span><span class=\"token punctuation\">(</span><span class=\"token parameter\">a<span class=\"token punctuation\">,</span> b<span class=\"token punctuation\">,</span> c</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token keyword\">var</span> args <span class=\"token operator\">=</span> <span class=\"token class-name\">Array</span><span class=\"token punctuation\">.</span>prototype<span class=\"token punctuation\">.</span><span class=\"token function\">slice</span><span class=\"token punctuation\">.</span><span class=\"token function\">apply</span><span class=\"token punctuation\">(</span>arguments<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  args<span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">(</span><span class=\"token string\">'hi!'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  console<span class=\"token punctuation\">.</span><span class=\"token function\">dir</span><span class=\"token punctuation\">(</span>args<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span>\n \n<span class=\"token function\">func</span><span class=\"token punctuation\">(</span><span class=\"token number\">1</span><span class=\"token punctuation\">,</span> <span class=\"token number\">2</span><span class=\"token punctuation\">,</span> <span class=\"token number\">3</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> <span class=\"token comment\">// [ 1, 2, 3, 'hi!' ]</span>\n<span class=\"token keyword\">var</span> list <span class=\"token operator\">=</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token number\">0</span><span class=\"token operator\">:</span> <span class=\"token string\">'Kim'</span><span class=\"token punctuation\">,</span>\n  <span class=\"token number\">1</span><span class=\"token operator\">:</span> <span class=\"token string\">'Lee'</span><span class=\"token punctuation\">,</span>\n  <span class=\"token number\">2</span><span class=\"token operator\">:</span> <span class=\"token string\">'Park'</span><span class=\"token punctuation\">,</span>\n  length<span class=\"token operator\">:</span> <span class=\"token number\">3</span><span class=\"token punctuation\">,</span>\n<span class=\"token punctuation\">}</span><span class=\"token punctuation\">;</span>\n \n<span class=\"token class-name\">Array</span><span class=\"token punctuation\">.</span>prototype<span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">.</span><span class=\"token function\">call</span><span class=\"token punctuation\">(</span>list<span class=\"token punctuation\">,</span> <span class=\"token string\">'Choi'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\nconsole<span class=\"token punctuation\">.</span><span class=\"token function\">log</span><span class=\"token punctuation\">(</span>list<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span></code></pre></div>\n<p>+</p>\n<p>추가로 ES6부터 <a href=\"https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/from\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Array.from()</a>이라는 메서드를 쓸 수 있어요.</p>\n<p>유사배열객체를 얕게 복사해 새 Array 객체로 만듭니다.</p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token keyword\">var</span> children <span class=\"token operator\">=</span> document<span class=\"token punctuation\">.</span>body<span class=\"token punctuation\">.</span>children<span class=\"token punctuation\">;</span> <span class=\"token comment\">// HTMLCollection</span>\n \nchildren<span class=\"token punctuation\">.</span><span class=\"token function\">forEach</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">function</span> <span class=\"token punctuation\">(</span><span class=\"token parameter\">el</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  el<span class=\"token punctuation\">.</span>classList<span class=\"token punctuation\">.</span><span class=\"token function\">add</span><span class=\"token punctuation\">(</span><span class=\"token string\">'on'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> <span class=\"token comment\">//ERROR! (children.forEach is not a function)</span>\n<span class=\"token punctuation\">}</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n<span class=\"token keyword\">var</span> children <span class=\"token operator\">=</span> document<span class=\"token punctuation\">.</span>body<span class=\"token punctuation\">.</span>children<span class=\"token punctuation\">;</span> <span class=\"token comment\">// HTMLCollection</span>\n \nArray<span class=\"token punctuation\">.</span><span class=\"token function\">from</span><span class=\"token punctuation\">(</span>children<span class=\"token punctuation\">)</span><span class=\"token punctuation\">.</span><span class=\"token function\">forEach</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">function</span> <span class=\"token punctuation\">(</span><span class=\"token parameter\">el</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  el<span class=\"token punctuation\">.</span>classList<span class=\"token punctuation\">.</span><span class=\"token function\">add</span><span class=\"token punctuation\">(</span><span class=\"token string\">'on'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> \n<span class=\"token punctuation\">}</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span></code></pre></div>\n<h2 id=\"6-화살표-함수로-쓴-this\" style=\"position:relative;\"><a href=\"#6-%ED%99%94%EC%82%B4%ED%91%9C-%ED%95%A8%EC%88%98%EB%A1%9C-%EC%93%B4-this\" aria-label=\"6 화살표 함수로 쓴 this permalink\" class=\"anchor-header before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>6. 화살표 함수로 쓴 this</h2>\n<p>‘으아니! 챠! 왜 함수 안에서 this가 전역 객체가 되는 거야!!’ 싶을 땐 화살표 함수를 쓰면 됩니다.</p>\n<p>화살표 함수는 전역 컨텍스트에서 실행되더라도 this를 새로 정의하지 않고, 바로 바깥 함수나 클래스의 this를 쓰거든요.</p>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\">var Person = function (name, age) {\n  this.name = name;\n  this.age = age;\n  this.say = function () {\n    console.log(this); // Person {name: &quot;Nana&quot;, age: 28}\n \n    setTimeout(function () {\n      console.log(this); // Window\n      console.log(this.name + &#39; is &#39; + this.age + &#39; years old&#39;);\n    }, 100);\n  };\n};\nvar me = new Person(&#39;Nana&#39;, 28);\n \nme.say(); //global is undefined years old</code></pre></div>\n<p>위 코드를 보면 내부 함수에서 this가 전역 객체를 가리키는 바람에 의도와는 다른 결과가 나왔습니다.</p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token keyword\">var</span> <span class=\"token function-variable function\">Person</span> <span class=\"token operator\">=</span> <span class=\"token keyword\">function</span> <span class=\"token punctuation\">(</span><span class=\"token parameter\">name<span class=\"token punctuation\">,</span> age</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>name <span class=\"token operator\">=</span> name<span class=\"token punctuation\">;</span>\n  <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>age <span class=\"token operator\">=</span> age<span class=\"token punctuation\">;</span>\n  <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span><span class=\"token function-variable function\">say</span> <span class=\"token operator\">=</span> <span class=\"token keyword\">function</span> <span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n    console<span class=\"token punctuation\">.</span><span class=\"token function\">log</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">this</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> <span class=\"token comment\">// Person {name: \"Nana\", age: 28}</span>\n \n    <span class=\"token function\">setTimeout</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">=></span> <span class=\"token punctuation\">{</span>\n      console<span class=\"token punctuation\">.</span><span class=\"token function\">log</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">this</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> <span class=\"token comment\">// Person {name: \"Nana\", age: 28}</span>\n      console<span class=\"token punctuation\">.</span><span class=\"token function\">log</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>name <span class=\"token operator\">+</span> <span class=\"token string\">' is '</span> <span class=\"token operator\">+</span> <span class=\"token keyword\">this</span><span class=\"token punctuation\">.</span>age <span class=\"token operator\">+</span> <span class=\"token string\">' years old'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> \n    <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span> <span class=\"token number\">100</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  <span class=\"token punctuation\">}</span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span><span class=\"token punctuation\">;</span>\n<span class=\"token keyword\">var</span> me <span class=\"token operator\">=</span> <span class=\"token keyword\">new</span> <span class=\"token class-name\">Person</span><span class=\"token punctuation\">(</span><span class=\"token string\">'Nana'</span><span class=\"token punctuation\">,</span> <span class=\"token number\">28</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> <span class=\"token comment\">//Nana is 28 years old</span></code></pre></div>\n<p>하지만 화살표 함수로 바꾸면 제대로 된 결과가 나오는 걸 볼 수 있습니다.</p>","tableOfContents":"<ul>\n<li><a href=\"/%EB%B0%94%EB%8B%90%EB%9D%BC%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-this/#1-%EB%8B%A8%EB%8F%85%EC%9C%BC%EB%A1%9C-%EC%93%B4-this\">1. 단독으로 쓴 this</a></li>\n<li><a href=\"/%EB%B0%94%EB%8B%90%EB%9D%BC%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-this/#2-%ED%95%A8%EC%88%98-%EC%95%88%EC%97%90%EC%84%9C-%EC%93%B4-this\">2. 함수 안에서 쓴 this</a></li>\n<li><a href=\"/%EB%B0%94%EB%8B%90%EB%9D%BC%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-this/#3-%EB%A9%94%EC%84%9C%EB%93%9C-%EC%95%88%EC%97%90%EC%84%9C-%EC%93%B4-this\">3. 메서드 안에서 쓴 this</a></li>\n<li><a href=\"/%EB%B0%94%EB%8B%90%EB%9D%BC%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-this/#4-%EC%9D%B4%EB%B2%A4%ED%8A%B8-%ED%95%B8%EB%93%A4%EB%9F%AC-%EC%95%88%EC%97%90%EC%84%9C-%EC%93%B4-this\">4. 이벤트 핸들러 안에서 쓴 this</a></li>\n<li><a href=\"/%EB%B0%94%EB%8B%90%EB%9D%BC%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-this/#5-%EC%83%9D%EC%84%B1%EC%9E%90-%EC%95%88%EC%97%90%EC%84%9C-%EC%93%B4-this\">5. 생성자 안에서 쓴 this</a></li>\n<li><a href=\"/%EB%B0%94%EB%8B%90%EB%9D%BC%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-this/#7-%EB%AA%85%EC%8B%9C%EC%A0%81-%EB%B0%94%EC%9D%B8%EB%94%A9%EC%9D%84-%ED%95%9C-this\">7. 명시적 바인딩을 한 this</a></li>\n<li><a href=\"/%EB%B0%94%EB%8B%90%EB%9D%BC%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-this/#6-%ED%99%94%EC%82%B4%ED%91%9C-%ED%95%A8%EC%88%98%EB%A1%9C-%EC%93%B4-this\">6. 화살표 함수로 쓴 this</a></li>\n</ul>","frontmatter":{"title":"vue 공부 1일차","path":"/vue공부1일차/","images":["images/1.jpg"],"category":"vue.js","tags":["vue.js","프론트엔드"],"date":"2021-04-04T12:23:00.000Z","components":null,"tweets":null,"summary":"vue 공부 1일차"}},"posts":{"edges":[{"node":{"frontmatter":{"type":"portfolio","title":"MOIJA","images":["moija/images/moija.png","moija/images/moija1.png","moija/images/moija2.png","moija/images/moija3.png","moija/images/moija4.png","moija/images/moija5.png"],"path":"/portfolios/moija/","tags":null,"date":"2022-03-02T00:00:00.000Z","summary":null}}},{"node":{"frontmatter":{"type":"portfolio","title":"VUELOG","images":["vuelog/images/vuelog.png","vuelog/images/vuelog1.png","vuelog/images/vuelog2.png","vuelog/images/vuelog3.png","vuelog/images/vuelog4.png","vuelog/images/vuelog5.png","vuelog/images/vuelog6.png"],"path":"/portfolios/VUELOG/","tags":null,"date":"2022-03-01T00:00:00.000Z","summary":null}}},{"node":{"frontmatter":{"type":"portfolio","title":"DT CENTER","images":["dtcenter/images/dtcenter.png","dtcenter/images/dtcenter1.png","dtcenter/images/dtcenter2.png","dtcenter/images/dtcenter3.png"],"path":"/portfolios/DT CENTER/","tags":null,"date":"2022-02-21T00:00:00.000Z","summary":null}}},{"node":{"frontmatter":{"type":"portfolio","title":"COLORBERRY","images":["ColorBerry/images/colorberry.png","ColorBerry/images/colorberry2.png","ColorBerry/images/colorberry3.png","ColorBerry/images/colorberry4.png","ColorBerry/images/colorberry5.png","ColorBerry/images/colorberry6.png","ColorBerry/images/colorberry7.png","ColorBerry/images/colorberry8.png"],"path":"/portfolios/COLORBERRY/","tags":null,"date":"2022-02-20T00:00:00.000Z","summary":null}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 요약","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 요약/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2021-0417T09:24:00000Z","summary":"[2020] 정보 처리 기사 실기 요약 입니다 정처기 공부를 할 때 활용하세요"}}},{"node":{"frontmatter":{"type":null,"title":"벡엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - node","images":["images/2.jpg"],"path":"/벡엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - node/","tags":["벡엔드","개발자","면접","기술면접","node"],"date":"2021-04-20T01:00:00.000Z","summary":"벡엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - node"}}},{"node":{"frontmatter":{"type":null,"title":"프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - Vue","images":["images/2.jpg"],"path":"/프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - Vue/","tags":["프론트엔드","개발자","면접","기술면접","Vue"],"date":"2021-04-15T01:00:00.000Z","summary":"프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - Vue"}}},{"node":{"frontmatter":{"type":null,"title":"프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - Vue(1)","images":["images/2.jpg"],"path":"/프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - Vue(1)/","tags":["프론트엔드","개발자","면접","기술면접","Vue"],"date":"2021-04-15T01:00:00.000Z","summary":"프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - Vue(1)"}}},{"node":{"frontmatter":{"type":null,"title":"프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - CSS","images":["images/2.jpg"],"path":"/프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - CSS/","tags":["프론트엔드","개발자","면접","기술면접","CSS"],"date":"2021-04-14T01:00:00.000Z","summary":"프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - CSS"}}},{"node":{"frontmatter":{"type":null,"title":"프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - React","images":["images/2.jpg"],"path":"/프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - React/","tags":["프론트엔드","개발자","면접","기술면접","React"],"date":"2021-04-14T01:00:00.000Z","summary":"프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - React"}}},{"node":{"frontmatter":{"type":null,"title":"RxJs 정리","images":["images/2.jpg"],"path":"/RxJs 정리/","tags":["벡엔드","개발자","프론트엔드","기술면접","RxJs"],"date":"2021-04-09T01:00:00.000Z","summary":"RxJs 정리"}}},{"node":{"frontmatter":{"type":null,"title":"벡엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - 기술스택","images":["images/2.jpg"],"path":"/벡엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - 기술스택/","tags":["벡엔드","개발자","면접","기술면접","기술스택"],"date":"2021-04-09T01:00:00.000Z","summary":"벡엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - 기술스택"}}},{"node":{"frontmatter":{"type":null,"title":"벡엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - CS","images":["images/2.jpg"],"path":"/벡엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - cs/","tags":["벡엔드","개발자","면접","기술면접","CS"],"date":"2021-04-08T01:00:00.000Z","summary":"프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - 자바스크립트 파트"}}},{"node":{"frontmatter":{"type":null,"title":"three.js 공부","images":["images/2.jpg"],"path":"/three.js 공부/","tags":["프론트엔드","개발자","면접","기술면접","자바스크립트"],"date":"2021-04-07T01:00:00.000Z","summary":"three.js 공부"}}},{"node":{"frontmatter":{"type":null,"title":"프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - 자바스크립트(1)","images":["images/2.jpg"],"path":"/프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - 자바스크립트(1)/","tags":["프론트엔드","개발자","면접","기술면접","자바스크립트"],"date":"2021-04-07T01:00:00.000Z","summary":"프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - 자바스크립트(1) 파트"}}},{"node":{"frontmatter":{"type":null,"title":"프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - 자바스크립트(2)","images":["images/2.jpg"],"path":"/프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - 자바스크립트(2)/","tags":["프론트엔드","개발자","면접","기술면접","자바스크립트"],"date":"2021-04-07T01:00:00.000Z","summary":"프론트엔드 개발자 면접 질문(기술면접) 질문 정리 모음 - 자바스크립트(2) 파트"}}},{"node":{"frontmatter":{"type":null,"title":"react 공부","images":["images/1.jpg"],"path":"/react 공부/","tags":["react.js","프론트엔드"],"date":"2021-04-05T12:23:00.000Z","summary":"react 공부"}}},{"node":{"frontmatter":{"type":null,"title":"vue 공부 1일차","images":["images/1.jpg"],"path":"/vue공부1일차/","tags":["vue.js","프론트엔드"],"date":"2021-04-04T12:23:00.000Z","summary":"vue 공부 1일차"}}},{"node":{"frontmatter":{"type":null,"title":"vue 공부 1일차","images":["images/1.jpg"],"path":"/vue공부1일차/","tags":["vue.js","프론트엔드"],"date":"2021-04-04T12:23:00.000Z","summary":"vue 공부 1일차"}}},{"node":{"frontmatter":{"type":null,"title":"history api 정리","images":["images/1.jpg"],"path":"/history api 정리/","tags":["네트워크 관리사 2급","자격증","소프트웨어"],"date":"2021-03-03T12:23:00.000Z","summary":"history api 정리"}}},{"node":{"frontmatter":{"type":null,"title":"프로그래머스 데브매칭 고양이 정리","images":["images/1.jpg"],"path":"/프로그래머스 데브매칭 고양이 정리/","tags":["네트워크 관리사 2급","자격증","소프트웨어"],"date":"2021-03-01T12:23:00.000Z","summary":"프로그래머스 데브매칭 고양이 정리입니다."}}},{"node":{"frontmatter":{"type":"portfolio","title":"ANGULOG","images":["angulog/images/angulog.png","angulog/images/angulog2.png","angulog/images/angulog3.png","angulog/images/angulog4.png","angulog/images/angulog5.png","angulog/images/angulog6.png"],"path":"/portfolios/ANGULOG/","tags":null,"date":"2021-02-23T00:00:00.000Z","summary":null}}},{"node":{"frontmatter":{"type":"portfolio","title":"MBTI WORLD","images":["mbtiworld/images/mbtiworld.png","mbtiworld/images/mbtiworld2.png","mbtiworld/images/mbtiworld3.png","mbtiworld/images/mbtiworld4.png","mbtiworld/images/mbtiworld5.png","mbtiworld/images/mbtiworld6.png","mbtiworld/images/mbtiworld7.png","mbtiworld/images/mbtiworld8.png","mbtiworld/images/mbtiworld9.png","mbtiworld/images/mbtiworld10.png"],"path":"/portfolios/MBTI WORLD/","tags":null,"date":"2021-02-19T00:00:00.000Z","summary":null}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 네트워크 관리사 2급 실기 요점 정리 - 리눅스_TCPIP_신경향","images":["images/1.jpg"],"path":"/[2020] 네트워크 관리사 2급 실기 요점 정리 - 리눅스_TCPIP_신경향/","tags":["네트워크 관리사 2급","자격증","소프트웨어"],"date":"2021-01-02T12:01:00.000Z","summary":"[2020] 네트워크 관리사 2급 실기 요점 정리 - 리눅스_TCPIP_신경향입니다."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 네트워크 관리사 2급 실기 요점 정리 - 라우터","images":["images/1.jpg"],"path":"/[2020] 네트워크 관리사 2급 실기 요점 정리 - 라우터/","tags":["네트워크 관리사 2급","자격증","소프트웨어"],"date":"2021-01-01T12:23:00.000Z","summary":"[2020] 네트워크 관리사 2급 실기 요점 정리 - 라우터입니다."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 네트워크 관리사 2급 실기 요점 정리 - 정리","images":["images/1.jpg"],"path":"/[2020] 네트워크 관리사 2급 실기 요점 정리 - 정리/","tags":["네트워크 관리사 2급","자격증","소프트웨어"],"date":"2021-01-01T12:23:00.000Z","summary":"[2020] 네트워크 관리사 2급 실기 요점 정리 - 정리입니다."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 네트워크 관리사 2급 실기 요점 정리 - 윈도우 서버","images":["images/1.jpg"],"path":"/[2020] 네트워크 관리사 2급 실기 요점 정리 - 윈도우 서버/","tags":["네트워크 관리사 2급","자격증","소프트웨어"],"date":"2021-01-01T12:21:00.000Z","summary":"[2020] 네트워크 관리사 2급 실기 요점 정리 - 윈도우 서버입니다."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 리눅스 마스터 2급 2차 요점 정리","images":["images/1.jpg"],"path":"/[2020] 리눅스 마스터 2급 2차 요점 정리 - 리눅스 일반/","tags":["리눅스 마스터 2급","자격증","소프트웨어"],"date":"2020-12-03T12:21:00.000Z","summary":"[2020] 리눅스 마스터 2급 2차 (1) 리눅스 일반 요점 정리입니다."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 16-단답형 문제(4)","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 16-단답형 문제(4)/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-10-15T09:24:00000Z","summary":"[2020] 정보 처리 기사 실기 16-단답형 문제(4)입니다 정처기 공부를 할 때 활용하세요"}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 15-단답형 문제(3)","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 15-단답형 문제(3)/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-10-15T09:22:00000Z","summary":"[2020] 정보 처리 기사 실기 15-단답형 문제(3)입니다 정처기 공부를 할 때 활용하세요"}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 14-단답형 문제(2)","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 14-단답형 문제(2)/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-10-15T09:21:00000Z","summary":"[2020] 정보 처리 기사 실기 14-단답형 문제(2)입니다 정처기 공부를 할 때 활용하세요"}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 13-단답형 문제(1)","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 13-단답형 문제(1)/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-10-14T16:21:00000Z","summary":"[2020] 정보 처리 기사 실기 13-단답형 문제(1)입니다 정처기 공부를 할 때 활용하세요"}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 12-정보 용어 정리","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 12-정보 용어 정리/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-10-14T02:21:00.000Z","summary":"2020 정보 처리 기사 실기 12-정보 용어 정리 요약 입니다. 정처기 공부를 할 때 활용하세요."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 11-제품 소프트웨어 패키징","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 11-제품 소프트웨어 패키징/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-07-17T23:03:00.000Z","summary":"2020 정보 처리 기사 제품 소프트웨어 패키징 입니다. 정처기 공부를 할 때 활용하세요."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 10-응용 SW 기초 기술 활용(3)","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 10-응용 SW 기초 기술 활용(3)/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-07-17T21:03:00.000Z","summary":"2020 정보 처리 기사 응용 SW 기초 기술 활용 입니다. 정처기 공부를 할 때 활용하세요."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 10-응용 SW 기초 기술 활용(2)","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 10-응용 SW 기초 기술 활용(2)/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-07-17T21:02:00.000Z","summary":"2020 정보 처리 기사 응용 SW 기초 기술 활용 입니다. 정처기 공부를 할 때 활용하세요."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 10-응용 SW 기초 기술 활용(1)","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 10-응용 SW 기초 기술 활용(1)/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-07-17T21:01:00.000Z","summary":"2020 정보 처리 기사 응용 SW 기초 기술 활용 입니다. 정처기 공부를 할 때 활용하세요."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 9-소프트웨어 보안 구축","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 9-소프트웨어 보안 구축/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-07-17T19:00:00.000Z","summary":"2020 정보 처리 기사 소프트웨어 보안 구축 입니다. 정처기 공부를 할 때 활용하세요."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 8-SQL 응용","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 8-SQL 응용/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-07-17T12:45:00.000Z","summary":"2020 정보 처리 기사 SQL 응용 요약 입니다. 정처기 공부를 할 때 활용하세요."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 6-화면 설계","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 6-화면 설계/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-07-16T17:00:00.000Z","summary":"2020 정보 처리 기사 화면 설계 요약 입니다. 정처기 공부를 할 때 활용하세요."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 7-애플리케이션 테스트 관리","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 7-애플리케이션 테스트 관리/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-07-16T17:00:00.000Z","summary":"2020 정보 처리 기사 애플리케이션 테스트 관리 요약 입니다. 정처기 공부를 할 때 활용하세요."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 5-서버 프로그램 구현","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 5-서버 프로그램 구현/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-07-16T06:31:00.000Z","summary":"2020 정보 처리 기사 서버 프로그램 구현 요약 입니다. 정처기 공부를 할 때 활용하세요."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 4-통합 구현","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 4-통합 구현/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-07-16T05:31:00.000Z","summary":"2020 정보 처리 기사 통합 구현 요약 입니다. 정처기 공부를 할 때 활용하세요."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 3-데이터 입출력 구현","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 3-데이터 입출력 구현/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-07-15T17:22:00.000Z","summary":"2020 정보 처리 기사 데이터 입출력 구현 요약 입니다. 정처기 공부를 할 때 활용하세요."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 2-요구 사항 확인","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 2-요구 사항 확인/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-07-15T17:21:00.000Z","summary":"2020 정보 처리 기사 요구 사항 확인 요약 입니다. 정처기 공부를 할 때 활용하세요."}}},{"node":{"frontmatter":{"type":null,"title":"[파이썬] itertools 에 대해서 알아보자","images":["images/4.jpg"],"path":"/[파이썬] itertools 에 대해서 알아보자/","tags":["파이썬","itertools","알고리즘"],"date":"2020-07-15T17:00:00.000Z","summary":"파이썬으로 순열, 조합을 빠르게 구해주는 라이브러리"}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 1-프로그래밍 언어 활용(3)","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 1-프로그래밍 언어 활용(3)/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-07-11T22:23:00.000Z","summary":"2020 정보 처리 기사 프로그래밍 언어 활용 요약 입니다. 정처기 공부를 할 때 활용하세요."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 1-프로그래밍 언어 활용(2)","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 1-프로그래밍 언어 활용(2)/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-07-11T22:21:00.000Z","summary":"2020 정보 처리 기사 프로그래밍 언어 활용 요약 입니다. 정처기 공부를 할 때 활용하세요."}}},{"node":{"frontmatter":{"type":null,"title":"[2020] 정보 처리 기사 실기 1-프로그래밍 언어 활용(1)","images":["images/1.jpg"],"path":"/[2020] 정보 처리 기사 실기 1-프로그래밍 언어 활용(1)/","tags":["정보처리기사 실기","정보처리기사","정처기"],"date":"2020-07-11T20:21:00.000Z","summary":"2020 정보 처리 기사 프로그래밍 언어 활용 요약 입니다. 정처기 공부를 할 때 활용하세요."}}},{"node":{"frontmatter":{"type":null,"title":"[파이썬] 파이썬을 이용한 이진탐색트리 구현","images":["images/4.jpg"],"path":"/[파이썬] 파이썬을 이용한 이진탐색트리 구현/","tags":["파이썬","알고리즘","이진탐색트리"],"date":"2020-07-06T22:06:00.000Z","summary":"파이썬을 이용한 이진탐색트리 구현"}}},{"node":{"frontmatter":{"type":null,"title":"2020 정보처리기사 필기 요점 정리(5)-프로그래밍 언어 활용(3)","images":["images/2.jpg"],"path":"/2020 정보처리기사 필기 요점 정리(5)-프로그래밍 언어 활용(3)/","tags":["정보처리기사 필기","정보처리기사"],"date":"2020-05-03T01:00:00.000Z","summary":"2020 정보처리기사 필기 요점 정리(5)-프로그래밍 언어 활용(3)"}}},{"node":{"frontmatter":{"type":null,"title":"2020 정보처리기사 필기 요점 정리(5)-프로그래밍 언어 활용(2)(운영체제)","images":["images/2.jpg"],"path":"/2020 정보처리기사 필기 요점 정리(5)-프로그래밍 언어 활용(2)(운영체제)/","tags":["정보처리기사 필기","정보처리기사"],"date":"2020-05-02T01:00:00.000Z","summary":"응용 SW 기초 기술 활용"}}},{"node":{"frontmatter":{"type":null,"title":"2020 정보처리기사 필기 요점 정리(5)-프로그래밍 언어 활용(1)","images":["images/2.jpg"],"path":"/2020 정보처리기사 필기 요점 정리(5)-프로그래밍 언어 활용(1)/","tags":["정보처리기사 필기","정보처리기사"],"date":"2020-05-01T01:00:00.000Z","summary":"2020 정보처리기사 필기 요점 정리(5)-프로그래밍 언어 활용(1)"}}},{"node":{"frontmatter":{"type":null,"title":"2020 정보처리기사 필기 요점 정리(4)-정보시스템 구축 관리(3)","images":["images/2.jpg"],"path":"/2020 정보처리기사 필기 요점 정리(4)-정보시스템 구축 관리(3)/","tags":["정보처리기사 필기","정보처리기사"],"date":"2020-04-03T03:05:00.000Z","summary":"정보시스템 구축 관리"}}},{"node":{"frontmatter":{"type":null,"title":"2020 정보처리기사 필기 요점 정리(4)-정보시스템 구축 관리(2)","images":["images/2.jpg"],"path":"/2020 정보처리기사 필기 요점 정리(4)-정보시스템 구축 관리(2)/","tags":["정보처리기사 필기","정보처리기사"],"date":"2020-04-02T03:05:00.000Z","summary":"2020 정보처리기사 필기 요점 정리(4)-정보시스템 구축 관리(2)"}}},{"node":{"frontmatter":{"type":null,"title":"2020 정보처리기사 필기 요점 정리(4)-정보시스템 구축 관리(1)","images":["images/2.jpg"],"path":"/2020 정보처리기사 필기 요점 정리(4)-정보시스템 구축 관리(1)/","tags":["정보처리기사 필기","정보처리기사"],"date":"2020-04-01T03:05:00.000Z","summary":"2020 정보처리기사 필기 요점 정리(4)-정보시스템 구축 관리(1)"}}},{"node":{"frontmatter":{"type":null,"title":"2020 정보처리기사 필기 요점 정리(3)-소프트웨어 설계(3)","images":["images/2.jpg"],"path":"/2020 정보처리기사 필기 요점 정리(3)-소프트웨어 설계(3)/","tags":["정보처리기사 필기","정보처리기사"],"date":"2020-03-03T02:01:00.000Z","summary":"2020 정보처리기사 필기 요점 정리(3)-소프트웨어 설계(3)"}}},{"node":{"frontmatter":{"type":null,"title":"2020 정보처리기사 필기 요점 정리(3)-소프트웨어 설계(2)","images":["images/2.jpg"],"path":"/2020 정보처리기사 필기 요점 정리(3)-소프트웨어 설계(2)/","tags":["정보처리기사 필기","정보처리기사"],"date":"2020-03-02T02:01:00.000Z","summary":"2020 정보처리기사 필기 요점 정리(3)-소프트웨어 설계(2)"}}},{"node":{"frontmatter":{"type":null,"title":"2020 정보처리기사 필기 요점 정리(3)-소프트웨어 설계(1)","images":["images/2.jpg"],"path":"/2020 정보처리기사 필기 요점 정리(3)-소프트웨어 설계(1)/","tags":["정보처리기사 필기","정보처리기사"],"date":"2020-03-01T02:01:00.000Z","summary":"2020 정보처리기사 필기 요점 정리(3)-소프트웨어 설계(1)"}}},{"node":{"frontmatter":{"type":null,"title":"2020 정보처리기사 필기 요점 정리(2)-소프트웨어 개발(3)","images":["images/2.jpg"],"path":"/2020 정보처리기사 필기 요점 정리(2)-소프트웨어 개발(3)/","tags":["정보처리기사 필기","정보처리기사"],"date":"2020-02-03T05:00:00.000Z","summary":"2020 정보처리기사 필기 요점 정리(2)-소프트웨어 개발(3)"}}},{"node":{"frontmatter":{"type":null,"title":"2020 정보처리기사 필기 요점 정리(2)-소프트웨어 개발(2)","images":["images/2.jpg"],"path":"/2020 정보처리기사 필기 요점 정리(2)-소프트웨어 개발(2)/","tags":["정보처리기사 필기","정보처리기사"],"date":"2020-02-02T05:00:00.000Z","summary":"2020 정보처리기사 필기 요점 정리(2)-소프트웨어 개발(2)"}}},{"node":{"frontmatter":{"type":null,"title":"2020 정보처리기사 필기 요점 정리(2)-소프트웨어 개발(1)","images":["images/2.jpg"],"path":"/2020 정보처리기사 필기 요점 정리(2)-소프트웨어 개발(1)/","tags":["정보처리기사 필기","정보처리기사"],"date":"2020-02-01T05:00:00.000Z","summary":"2020 정보처리기사 필기 요점 정리(2)-소프트웨어 개발(1)"}}},{"node":{"frontmatter":{"type":null,"title":"2020 정보처리기사 필기 요점 정리(1)-데이터베이스 구축(3)","images":["images/2.jpg"],"path":"/2020 정보처리기사 필기 요점 정리(1)-데이터베이스 구축(3)/","tags":["정보처리기사 필기","정보처리기사"],"date":"2020-01-03T05:00:00.000Z","summary":"2020 정보처리기사 필기 요점 정리(1)-데이터베이스 구축(3)"}}},{"node":{"frontmatter":{"type":null,"title":"2020 정보처리기사 필기 요점 정리(1)-데이터베이스 구축(2)","images":["images/2.jpg"],"path":"/2020 정보처리기사 필기 요점 정리(1)-데이터베이스 구축(2)/","tags":["정보처리기사 필기","정보처리기사"],"date":"2020-01-02T05:00:00.000Z","summary":"2020 정보처리기사 필기 요점 정리(1)-데이터베이스 구축(2)"}}},{"node":{"frontmatter":{"type":null,"title":"2020 정보처리기사 필기 요점 정리(1)-데이터베이스 구축(1)","images":["images/2.jpg"],"path":"/2020 정보처리기사 필기 요점 정리(1)-데이터베이스 구축(1)/","tags":["정보처리기사 필기","정보처리기사","필기","데이터베이스 구축"],"date":"2020-01-01T05:00:00.000Z","summary":"2020 정보처리기사 필기 요점 정리(1)-데이터베이스 구축(1)"}}},{"node":{"frontmatter":{"type":"portfolio","title":"CAPTURE BLOG","images":["CaptureBlog/images/capture1.png","CaptureBlog/images/capture2.png","CaptureBlog/images/capture3.png","CaptureBlog/images/capture4.png","CaptureBlog/images/capture5.png","CaptureBlog/images/capture6.png"],"path":"/portfolios/CAPTURE BLOG/","tags":null,"date":"2020-01-01T00:00:00.000Z","summary":null}}},{"node":{"frontmatter":{"type":"portfolio","title":"LANGUAGE TOGETHER","images":["languageTogether/images/languagetogether.png","languageTogether/images/languagetogether2.png","languageTogether/images/languagetogether3.png","languageTogether/images/languagetogether4.png","languageTogether/images/languagetogether5.png","languageTogether/images/languagetogether6.png","languageTogether/images/languagetogether7.png","languageTogether/images/languagetogether8.png","languageTogether/images/languagetogether9.png"],"path":"/portfolios/LANGUAGE TOGETHER/","tags":null,"date":"2018-01-01T00:00:00.000Z","summary":null}}},{"node":{"frontmatter":{"type":"portfolio","title":"MOVIE STAR","images":["moviestar/images/moviestar.png","moviestar/images/moviestar2.png","moviestar/images/moviestar3.png","moviestar/images/moviestar4.png"],"path":"/portfolios/MOVIE STAR/","tags":null,"date":"2018-01-01T00:00:00.000Z","summary":null}}},{"node":{"frontmatter":{"type":"resume","title":"Resume","images":null,"path":"/resume/","tags":null,"date":"2000-01-01T00:00:00.000Z","summary":null}}}]}},"pageContext":{}}}